[INFO] fetching crate crack 0.1.0...
[INFO] checking crack-0.1.0 against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] extracting crate crack 0.1.0 into /workspace/builds/worker-1/source
[INFO] validating manifest of crates.io crate crack 0.1.0 on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate crack 0.1.0
[INFO] finished tweaking crates.io crate crack 0.1.0
[INFO] tweaked toml for crates.io crate crack 0.1.0 written to /workspace/builds/worker-1/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] ad48bda2c071473f1089fdeac358d959ba34db9d1e4df6508c8b34c9083bff3b
[INFO] running `Command { std: "docker" "start" "-a" "ad48bda2c071473f1089fdeac358d959ba34db9d1e4df6508c8b34c9083bff3b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ad48bda2c071473f1089fdeac358d959ba34db9d1e4df6508c8b34c9083bff3b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ad48bda2c071473f1089fdeac358d959ba34db9d1e4df6508c8b34c9083bff3b", kill_on_drop: false }`
[INFO] [stdout] ad48bda2c071473f1089fdeac358d959ba34db9d1e4df6508c8b34c9083bff3b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8c2fab56b1df99c6fd2c99424eb732a1bb560e48109f0dcabd548b8a4ac75759
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "8c2fab56b1df99c6fd2c99424eb732a1bb560e48109f0dcabd548b8a4ac75759", kill_on_drop: false }`
[INFO] [stderr]     Checking futures v0.1.29
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]     Checking itoa v0.3.4
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking addr2line v0.13.0
[INFO] [stderr]     Checking log v0.4.11
[INFO] [stderr]     Checking net2 v0.2.35
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking bincode v0.9.2
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking thread-id v2.0.0
[INFO] [stderr]     Checking parking_lot_core v0.6.2
[INFO] [stderr]     Checking aho-corasick v0.5.3
[INFO] [stderr]     Checking bincode v0.6.1
[INFO] [stderr]     Checking thread_local v0.2.7
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking parking_lot v0.9.0
[INFO] [stderr]     Checking regex v0.2.11
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking backtrace v0.3.50
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking crdts v1.3.0
[INFO] [stderr]     Checking regex v0.1.80
[INFO] [stderr]     Checking error-chain v0.9.0
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking env_logger v0.4.3
[INFO] [stderr]     Checking env_logger v0.3.5
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]    Compiling serde_derive v0.9.15
[INFO] [stderr]     Checking quickcheck v0.2.27
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking tokio-core v0.1.17
[INFO] [stderr]     Checking uuid v0.4.0
[INFO] [stderr]     Checking serde_json v0.9.10
[INFO] [stderr]     Checking crack v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert`
[INFO] [stdout]  --> src/transport.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::convert;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/transport.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/transport.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/transport.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/transport.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]  --> src/transport.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::str;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> src/transport.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Handle`
[INFO] [stdout]   --> src/transport.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio_core::reactor::{Core, Handle};
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DecodingResult`
[INFO] [stdout]   --> src/transport.rs:20:48
[INFO] [stdout]    |
[INFO] [stdout] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]   --> src/transport.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use serde_json;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut`, `BytesMut`
[INFO] [stdout]   --> src/transport.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | use bytes::{BufMut, BytesMut};
[INFO] [stdout]    |             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `Encoder`
[INFO] [stdout]   --> src/transport.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited};
[INFO] [stdout]    |                       ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_io::AsyncRead`
[INFO] [stdout]   --> src/transport.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use tokio_io::AsyncRead;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `future`, `sink`
[INFO] [stdout]   --> src/transport.rs:25:15
[INFO] [stdout]    |
[INFO] [stdout] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture};
[INFO] [stdout]    |               ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplitSink`, `SplitStream`, `self`
[INFO] [stdout]   --> src/transport.rs:26:23
[INFO] [stdout]    |
[INFO] [stdout] 26 | use futures::stream::{self, SplitSink, SplitStream};
[INFO] [stdout]    |                       ^^^^  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/transport.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `from_binary`, `to_binary`
[INFO] [stdout]   --> src/transport.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | use {to_binary, from_binary};
[INFO] [stdout]    |      ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kernel::Peer`
[INFO] [stdout]   --> src/transport.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use kernel::Peer;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:62:48
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Process<A>(Vec<(Option<String>, Box<Fn(A) -> A>)>);
[INFO] [stdout]    |                                                ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn new<'a>(steps: Vec<(&'a str, Box<Fn(A) -> A>)>) -> Process<A> {
[INFO] [stdout]    |                                         ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub invariants: Vec<Box<Fn(&A) -> bool>>,
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:73:49
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub processes: Vec<Vec<(Option<String>, Box<Fn(A) -> A>)>>,
[INFO] [stdout]    |                                                 ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `crc16_arr`, `crc16`
[INFO] [stdout]   --> src/lib.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crc16::{crc16_arr, crc16};
[INFO] [stdout]    |             ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert`
[INFO] [stdout]  --> src/transport.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::convert;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/transport.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/transport.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/transport.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/transport.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]  --> src/transport.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::str;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> src/transport.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Handle`
[INFO] [stdout]   --> src/transport.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio_core::reactor::{Core, Handle};
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DecodingResult`
[INFO] [stdout]   --> src/transport.rs:20:48
[INFO] [stdout]    |
[INFO] [stdout] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]   --> src/transport.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use serde_json;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufMut`, `BytesMut`
[INFO] [stdout]   --> src/transport.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 | use bytes::{BufMut, BytesMut};
[INFO] [stdout]    |             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `Encoder`
[INFO] [stdout]   --> src/transport.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited};
[INFO] [stdout]    |                       ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_io::AsyncRead`
[INFO] [stdout]   --> src/transport.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use tokio_io::AsyncRead;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `future`, `sink`
[INFO] [stdout]   --> src/transport.rs:25:15
[INFO] [stdout]    |
[INFO] [stdout] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture};
[INFO] [stdout]    |               ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplitSink`, `SplitStream`, `self`
[INFO] [stdout]   --> src/transport.rs:26:23
[INFO] [stdout]    |
[INFO] [stdout] 26 | use futures::stream::{self, SplitSink, SplitStream};
[INFO] [stdout]    |                       ^^^^  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/transport.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `from_binary`, `to_binary`
[INFO] [stdout]   --> src/transport.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | use {to_binary, from_binary};
[INFO] [stdout]    |      ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kernel::Peer`
[INFO] [stdout]   --> src/transport.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use kernel::Peer;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:62:48
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Process<A>(Vec<(Option<String>, Box<Fn(A) -> A>)>);
[INFO] [stdout]    |                                                ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn new<'a>(steps: Vec<(&'a str, Box<Fn(A) -> A>)>) -> Process<A> {
[INFO] [stdout]    |                                         ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub invariants: Vec<Box<Fn(&A) -> bool>>,
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/model.rs:73:49
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub processes: Vec<Vec<(Option<String>, Box<Fn(A) -> A>)>>,
[INFO] [stdout]    |                                                 ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `crc16_arr`, `crc16`
[INFO] [stdout]   --> src/lib.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crc16::{crc16_arr, crc16};
[INFO] [stdout]    |             ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec
[INFO] [stdout]   --> src/transport.rs:23:41
[INFO] [stdout]    |
[INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited};
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec
[INFO] [stdout]    --> src/transport.rs:108:28
[INFO] [stdout]     |
[INFO] [stdout] 108 |             let deframed = length_delimited::FramedRead::new(socket);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec
[INFO] [stdout]    --> src/transport.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let framed = length_delimited::FramedWrite::new(socket);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/transport.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |         thread::sleep_ms(300);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec
[INFO] [stdout]   --> src/transport.rs:23:41
[INFO] [stdout]    |
[INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited};
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec
[INFO] [stdout]    --> src/transport.rs:108:28
[INFO] [stdout]     |
[INFO] [stdout] 108 |             let deframed = length_delimited::FramedRead::new(socket);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec
[INFO] [stdout]    --> src/transport.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let framed = length_delimited::FramedWrite::new(socket);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::<T>::send`: renamed to `unbounded_send`
[INFO] [stdout]   --> src/transport.rs:61:24
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     tx.send(msg).unwrap();
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::<T>::send`: renamed to `unbounded_send`
[INFO] [stdout]   --> src/transport.rs:61:24
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     tx.send(msg).unwrap();
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/transport.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         for i in 1..4 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer`
[INFO] [stdout]   --> src/kernel.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn ping(&self, peer: Peer) -> Result<(), ()> {
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_peer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer`
[INFO] [stdout]   --> src/kernel.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn purge(&self, peer: Peer) {}
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_peer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note`
[INFO] [stdout]   --> src/model.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 let (ref note, ref f) = self.processes[choice][*index];
[INFO] [stdout]    |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer`
[INFO] [stdout]   --> src/kernel.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn ping(&self, peer: Peer) -> Result<(), ()> {
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_peer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer`
[INFO] [stdout]   --> src/kernel.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn purge(&self, peer: Peer) {}
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_peer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `note`
[INFO] [stdout]   --> src/model.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 let (ref note, ref f) = self.processes[choice][*index];
[INFO] [stdout]    |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_note`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `connections`
[INFO] [stdout]   --> src/transport.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     connections: Arc<RwLock<HashMap<SocketAddr, mpsc::UnboundedSender<Tx>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/transport.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fn new(addr: SocketAddr) -> TCPTransport<Rx, Tx> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Connected`
[INFO] [stdout]  --> src/kernel.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Connected,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Disconnected`
[INFO] [stdout]  --> src/kernel.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Disconnected,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `state`
[INFO] [stdout]  --> src/kernel.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     state: PeerState,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `addr`
[INFO] [stdout]  --> src/kernel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     addr: String,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `peers`
[INFO] [stdout]   --> src/kernel.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     peers: Vec<Peer>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `cron`
[INFO] [stdout]   --> src/kernel.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn cron(&self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Inner`
[INFO] [stdout]   --> src/fsm.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |         struct Inner {
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `fact`
[INFO] [stdout]    --> src/model.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn fact(n: usize) -> usize {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `connections`
[INFO] [stdout]   --> src/transport.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     connections: Arc<RwLock<HashMap<SocketAddr, mpsc::UnboundedSender<Tx>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/transport.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fn new(addr: SocketAddr) -> TCPTransport<Rx, Tx> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `recv`
[INFO] [stdout]   --> src/transport.rs:91:4
[INFO] [stdout]    |
[INFO] [stdout] 91 | fn recv<T>(addr: SocketAddr) -> Arc<MsQueue<(SocketAddr, T)>>
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `send`
[INFO] [stdout]    --> src/transport.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn send<T>(addr: SocketAddr) -> mpsc::UnboundedSender<T>
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Connected`
[INFO] [stdout]  --> src/kernel.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Connected,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Disconnected`
[INFO] [stdout]  --> src/kernel.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Disconnected,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `state`
[INFO] [stdout]  --> src/kernel.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     state: PeerState,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `addr`
[INFO] [stdout]  --> src/kernel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     addr: String,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `peers`
[INFO] [stdout]   --> src/kernel.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     peers: Vec<Peer>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `cron`
[INFO] [stdout]   --> src/kernel.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn cron(&self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/model.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn new<I>(inner: &Vec<Vec<I>>) -> Runs {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Process`
[INFO] [stdout]   --> src/model.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Process<A>(Vec<(Option<String>, Box<Fn(A) -> A>)>);
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/model.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn new<'a>(steps: Vec<(&'a str, Box<Fn(A) -> A>)>) -> Process<A> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `System`
[INFO] [stdout]   --> src/model.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct System<A> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `test`
[INFO] [stdout]   --> src/model.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn test(&self) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `fact`
[INFO] [stdout]    --> src/model.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn fact(n: usize) -> usize {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used
[INFO] [stdout]    --> src/transport.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         core.run(client).unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: streams do nothing unless polled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used
[INFO] [stdout]    --> src/transport.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         core.run(client).unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: streams do nothing unless polled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 48 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 31.49s
[INFO] running `Command { std: "docker" "inspect" "8c2fab56b1df99c6fd2c99424eb732a1bb560e48109f0dcabd548b8a4ac75759", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c2fab56b1df99c6fd2c99424eb732a1bb560e48109f0dcabd548b8a4ac75759", kill_on_drop: false }`
[INFO] [stdout] 8c2fab56b1df99c6fd2c99424eb732a1bb560e48109f0dcabd548b8a4ac75759
